/cody/pratham0709/Striver-A-TO-Z-SDE-SHEET/Array/Easy/Rotate%20array.cpp
class Solution {
public:
void rotate(vector<int>& nums, int k) {
// Brute Force Approch{
// k = k % nums.size();
// int temp[k];
// for(int i =0; i<k; i++){
// temp[i] = nums[i];
// }
// // Shifting
// for(int i = k; i<nums.size(); i++){
// nums[i-k] = nums[i];
// }
// // reverse back temp
// for(int i = nums.size() - k; i<nums.size(); i++){
// nums[i] = temp[i - (nums.size() - k)];
// }
// }
//Optimal solutions
k=k%nums.size();
reverse(nums.begin(),nums.begin()+(nums.size()-k));
reverse(nums.begin()+(nums.size()-k),nums.end());
reverse(nums.begin(),nums.end());
}
};